package com.example.yian.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

@TableName("text_search_responses") // 指定表名
@Data // 自动生成getter、setter、equals、hashCode、toString方法
@AllArgsConstructor // 全参数构造器
@NoArgsConstructor // 无参构造器
public class TextSearchResponse {

    @TableId(value = "id", type = IdType.AUTO) // 自增主键
    private Long id; // 响应记录唯一标识

    @TableField("request_id")
    private Long requestId; // 关联的搜索请求ID

    @TableField("chat_id")
    private String chatId; // 会话ID

    @TableField("text_id")
    private String textId; // 文本ID

    @TableField("operate")
    private Boolean operate; // 是否成功

    private String content; // 规范条文及描述

    public String getContent() {
        return content;
    }

    @TableField("ref_text")
    private String refText; // 引用条文，对应原代码中的refText，已修正

    @TableField("is_end")
    private Boolean isEnd; // 是否结束

    @TableField(value = "created_at", fill = FieldFill.INSERT) // 插入时自动填充
    private LocalDateTime createdAt; // 记录创建时间，默认CURRENT_TIMESTAMP

    @TableField(value = "updated_at", fill = FieldFill.INSERT_UPDATE) // 插入和更新时自动填充
    private LocalDateTime updatedAt; // 记录更新时间，默认CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
}
